テクニカル Q&A

FL12 - Allocate とディスクフルエラー (1999 年 7 月 21 日)


Q: 自作のアプリケーションで AFP ボリュームにドキュメントを保存しようとすると、使用可能な領域が十分にあってもディスクに十分な空きがないと報告され、ドキュメントを保存できません (Finder も実際よりもはるかに大きなボリュームサイズを表示しています。ただ、以前このようなトリックを行うサーバを見たことがあり、その際はこのような問題は起こりませんでした)。よく調べてみると、私のアプリケーションの Allocate への呼び出しが失敗していることがわかりました。これはなぜでしょうか。

A: Allocate を実装しているのは AFP サーバではなく、AppleShare クライアントです。クライアントは、ディスク上の利用可能なディスク容量に基づいて、Allocate 呼び出しを成功させるか失敗させるかを判断します。サードパーティの AFP サーバには、このような利用可能ディスク容量を正しく表示しないバージョンがあり、AppleShare クライアントを混乱させ、要求を失敗させてしまいます。Allocate の用途はほとんどが最適化です。ご質問のコードでも最適化を目的としているのであれば、Allocate の返り値は無視し、ドキュメントの保存を続行してください。目的が最適化でなければ、一番良い方法は、ユーザの方に AFP サーバを、このバグの出ない最新バージョンにアップデートするようにすすめることでしょう


-- Pete Gontier
Worldwide Developer Technical Support


テクニカル Q&A | 目次

To contact us, please use the Contact Us page.